
package org.opentravel.ota._2003._05;

import java.math.BigDecimal;
import java.math.BigInteger;
import java.util.ArrayList;
import java.util.List;

import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlSchemaType;
import javax.xml.bind.annotation.XmlType;


/**
 * The Vehicle Location Requirements Type is used to define information on the requirements that are in place with regard to the renting of a vehicle. Such requirements include license requirements, age requirements, payment options, etc. These are requirement that typically must be met by the renter before a rental may commence.
 * 
 * <p>VehicleLocationRequirementsType complex type的 Java 类。
 * 
 * <p>以下模式片段指定包含在此类中的预期内容。
 * 
 * <pre>
 * &lt;complexType name="VehicleLocationRequirementsType">
 *   &lt;complexContent>
 *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *       &lt;sequence>
 *         &lt;element name="Age" minOccurs="0">
 *           &lt;complexType>
 *             &lt;complexContent>
 *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *                 &lt;sequence>
 *                   &lt;element name="AgeSurcharge" maxOccurs="5" minOccurs="0">
 *                     &lt;complexType>
 *                       &lt;complexContent>
 *                         &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *                           &lt;attGroup ref="{http://www.opentravel.org/OTA/2003/05}CurrencyAmountGroup"/>
 *                           &lt;attribute name="Age" type="{http://www.opentravel.org/OTA/2003/05}OTA_CodeType" />
 *                         &lt;/restriction>
 *                       &lt;/complexContent>
 *                     &lt;/complexType>
 *                   &lt;/element>
 *                   &lt;element name="AgeInfos" minOccurs="0">
 *                     &lt;complexType>
 *                       &lt;complexContent>
 *                         &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *                           &lt;sequence>
 *                             &lt;element name="AgeInfo" maxOccurs="99">
 *                               &lt;complexType>
 *                                 &lt;complexContent>
 *                                   &lt;extension base="{http://www.opentravel.org/OTA/2003/05}FormattedTextType">
 *                                     &lt;attribute name="Type" use="required" type="{http://www.opentravel.org/OTA/2003/05}LocationDetailRequirementAgeInfoType" />
 *                                   &lt;/extension>
 *                                 &lt;/complexContent>
 *                               &lt;/complexType>
 *                             &lt;/element>
 *                           &lt;/sequence>
 *                         &lt;/restriction>
 *                       &lt;/complexContent>
 *                     &lt;/complexType>
 *                   &lt;/element>
 *                 &lt;/sequence>
 *                 &lt;attribute name="MinimumAge" type="{http://www.w3.org/2001/XMLSchema}positiveInteger" />
 *                 &lt;attribute name="MaximumAge" type="{http://www.w3.org/2001/XMLSchema}positiveInteger" />
 *               &lt;/restriction>
 *             &lt;/complexContent>
 *           &lt;/complexType>
 *         &lt;/element>
 *         &lt;element name="AdditionalDriver" minOccurs="0">
 *           &lt;complexType>
 *             &lt;complexContent>
 *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *                 &lt;sequence>
 *                   &lt;element name="AddlDriverInfos" minOccurs="0">
 *                     &lt;complexType>
 *                       &lt;complexContent>
 *                         &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *                           &lt;sequence>
 *                             &lt;element name="AddlDriverInfo" maxOccurs="99">
 *                               &lt;complexType>
 *                                 &lt;complexContent>
 *                                   &lt;extension base="{http://www.opentravel.org/OTA/2003/05}FormattedTextType">
 *                                     &lt;attribute name="Type" use="required" type="{http://www.opentravel.org/OTA/2003/05}LocationDetailRequirementAddlDriverInfoType" />
 *                                   &lt;/extension>
 *                                 &lt;/complexContent>
 *                               &lt;/complexType>
 *                             &lt;/element>
 *                           &lt;/sequence>
 *                         &lt;/restriction>
 *                       &lt;/complexContent>
 *                     &lt;/complexType>
 *                   &lt;/element>
 *                 &lt;/sequence>
 *               &lt;/restriction>
 *             &lt;/complexContent>
 *           &lt;/complexType>
 *         &lt;/element>
 *         &lt;element name="PaymentOptions" minOccurs="0">
 *           &lt;complexType>
 *             &lt;complexContent>
 *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *                 &lt;sequence>
 *                   &lt;element name="CreditCard" type="{http://www.opentravel.org/OTA/2003/05}AcceptablePaymentCardsInfoType" minOccurs="0"/>
 *                   &lt;element name="DebitCard" type="{http://www.opentravel.org/OTA/2003/05}AcceptablePaymentCardsInfoType" minOccurs="0"/>
 *                   &lt;element name="Cash" minOccurs="0">
 *                     &lt;complexType>
 *                       &lt;complexContent>
 *                         &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *                           &lt;sequence>
 *                             &lt;element name="Info" type="{http://www.opentravel.org/OTA/2003/05}FormattedTextType" minOccurs="0"/>
 *                           &lt;/sequence>
 *                         &lt;/restriction>
 *                       &lt;/complexContent>
 *                     &lt;/complexType>
 *                   &lt;/element>
 *                   &lt;element name="Voucher" minOccurs="0">
 *                     &lt;complexType>
 *                       &lt;complexContent>
 *                         &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *                           &lt;sequence>
 *                             &lt;element name="Info" type="{http://www.opentravel.org/OTA/2003/05}FormattedTextType" minOccurs="0"/>
 *                           &lt;/sequence>
 *                         &lt;/restriction>
 *                       &lt;/complexContent>
 *                     &lt;/complexType>
 *                   &lt;/element>
 *                   &lt;element name="BankAcct" minOccurs="0">
 *                     &lt;complexType>
 *                       &lt;complexContent>
 *                         &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *                           &lt;sequence>
 *                             &lt;element name="Info" type="{http://www.opentravel.org/OTA/2003/05}FormattedTextType" minOccurs="0"/>
 *                           &lt;/sequence>
 *                         &lt;/restriction>
 *                       &lt;/complexContent>
 *                     &lt;/complexType>
 *                   &lt;/element>
 *                   &lt;element name="DirectBill" minOccurs="0">
 *                     &lt;complexType>
 *                       &lt;complexContent>
 *                         &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *                           &lt;sequence>
 *                             &lt;element name="Info" type="{http://www.opentravel.org/OTA/2003/05}FormattedTextType" minOccurs="0"/>
 *                           &lt;/sequence>
 *                         &lt;/restriction>
 *                       &lt;/complexContent>
 *                     &lt;/complexType>
 *                   &lt;/element>
 *                   &lt;element name="LoyaltyRedemption" minOccurs="0">
 *                     &lt;complexType>
 *                       &lt;complexContent>
 *                         &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *                           &lt;sequence>
 *                             &lt;element name="Info" type="{http://www.opentravel.org/OTA/2003/05}FormattedTextType" minOccurs="0"/>
 *                           &lt;/sequence>
 *                         &lt;/restriction>
 *                       &lt;/complexContent>
 *                     &lt;/complexType>
 *                   &lt;/element>
 *                   &lt;element name="MiscChargeOrder" minOccurs="0">
 *                     &lt;complexType>
 *                       &lt;complexContent>
 *                         &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *                           &lt;sequence>
 *                             &lt;element name="Info" type="{http://www.opentravel.org/OTA/2003/05}FormattedTextType" minOccurs="0"/>
 *                           &lt;/sequence>
 *                         &lt;/restriction>
 *                       &lt;/complexContent>
 *                     &lt;/complexType>
 *                   &lt;/element>
 *                   &lt;element name="Deposit" type="{http://www.opentravel.org/OTA/2003/05}AcceptablePaymentCardsInfoType" minOccurs="0"/>
 *                   &lt;element name="Guarantee" type="{http://www.opentravel.org/OTA/2003/05}AcceptablePaymentCardsInfoType" minOccurs="0"/>
 *                   &lt;element name="PrePayment" type="{http://www.opentravel.org/OTA/2003/05}AcceptablePaymentCardsInfoType" minOccurs="0"/>
 *                   &lt;element name="PaymentOptionsInfo" type="{http://www.opentravel.org/OTA/2003/05}FormattedTextType" minOccurs="0"/>
 *                 &lt;/sequence>
 *               &lt;/restriction>
 *             &lt;/complexContent>
 *           &lt;/complexType>
 *         &lt;/element>
 *         &lt;element name="RequirementInfos" minOccurs="0">
 *           &lt;complexType>
 *             &lt;complexContent>
 *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *                 &lt;sequence>
 *                   &lt;element name="RequirementInfo" maxOccurs="99">
 *                     &lt;complexType>
 *                       &lt;complexContent>
 *                         &lt;extension base="{http://www.opentravel.org/OTA/2003/05}FormattedTextType">
 *                           &lt;attribute name="Type" use="required" type="{http://www.opentravel.org/OTA/2003/05}LocationDetailRequirementInfoType" />
 *                         &lt;/extension>
 *                       &lt;/complexContent>
 *                     &lt;/complexType>
 *                   &lt;/element>
 *                 &lt;/sequence>
 *               &lt;/restriction>
 *             &lt;/complexContent>
 *           &lt;/complexType>
 *         &lt;/element>
 *         &lt;element ref="{http://www.opentravel.org/OTA/2003/05}TPA_Extensions" minOccurs="0"/>
 *       &lt;/sequence>
 *     &lt;/restriction>
 *   &lt;/complexContent>
 * &lt;/complexType>
 * </pre>
 * 
 * 
 */
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "VehicleLocationRequirementsType", propOrder = {
    "age",
    "additionalDriver",
    "paymentOptions",
    "requirementInfos",
    "tpaExtensions"
})
public class VehicleLocationRequirementsType {

    @XmlElement(name = "Age")
    protected VehicleLocationRequirementsType.Age age;
    @XmlElement(name = "AdditionalDriver")
    protected VehicleLocationRequirementsType.AdditionalDriver additionalDriver;
    @XmlElement(name = "PaymentOptions")
    protected VehicleLocationRequirementsType.PaymentOptions paymentOptions;
    @XmlElement(name = "RequirementInfos")
    protected VehicleLocationRequirementsType.RequirementInfos requirementInfos;
    @XmlElement(name = "TPA_Extensions")
    protected TPAExtensionsType tpaExtensions;

    /**
     * 获取age属性的值。
     * 
     * @return
     *     possible object is
     *     {@link VehicleLocationRequirementsType.Age }
     *     
     */
    public VehicleLocationRequirementsType.Age getAge() {
        return age;
    }

    /**
     * 设置age属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link VehicleLocationRequirementsType.Age }
     *     
     */
    public void setAge(VehicleLocationRequirementsType.Age value) {
        this.age = value;
    }

    /**
     * 获取additionalDriver属性的值。
     * 
     * @return
     *     possible object is
     *     {@link VehicleLocationRequirementsType.AdditionalDriver }
     *     
     */
    public VehicleLocationRequirementsType.AdditionalDriver getAdditionalDriver() {
        return additionalDriver;
    }

    /**
     * 设置additionalDriver属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link VehicleLocationRequirementsType.AdditionalDriver }
     *     
     */
    public void setAdditionalDriver(VehicleLocationRequirementsType.AdditionalDriver value) {
        this.additionalDriver = value;
    }

    /**
     * 获取paymentOptions属性的值。
     * 
     * @return
     *     possible object is
     *     {@link VehicleLocationRequirementsType.PaymentOptions }
     *     
     */
    public VehicleLocationRequirementsType.PaymentOptions getPaymentOptions() {
        return paymentOptions;
    }

    /**
     * 设置paymentOptions属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link VehicleLocationRequirementsType.PaymentOptions }
     *     
     */
    public void setPaymentOptions(VehicleLocationRequirementsType.PaymentOptions value) {
        this.paymentOptions = value;
    }

    /**
     * 获取requirementInfos属性的值。
     * 
     * @return
     *     possible object is
     *     {@link VehicleLocationRequirementsType.RequirementInfos }
     *     
     */
    public VehicleLocationRequirementsType.RequirementInfos getRequirementInfos() {
        return requirementInfos;
    }

    /**
     * 设置requirementInfos属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link VehicleLocationRequirementsType.RequirementInfos }
     *     
     */
    public void setRequirementInfos(VehicleLocationRequirementsType.RequirementInfos value) {
        this.requirementInfos = value;
    }

    /**
     * 获取tpaExtensions属性的值。
     * 
     * @return
     *     possible object is
     *     {@link TPAExtensionsType }
     *     
     */
    public TPAExtensionsType getTPAExtensions() {
        return tpaExtensions;
    }

    /**
     * 设置tpaExtensions属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link TPAExtensionsType }
     *     
     */
    public void setTPAExtensions(TPAExtensionsType value) {
        this.tpaExtensions = value;
    }


    /**
     * <p>anonymous complex type的 Java 类。
     * 
     * <p>以下模式片段指定包含在此类中的预期内容。
     * 
     * <pre>
     * &lt;complexType>
     *   &lt;complexContent>
     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     *       &lt;sequence>
     *         &lt;element name="AddlDriverInfos" minOccurs="0">
     *           &lt;complexType>
     *             &lt;complexContent>
     *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     *                 &lt;sequence>
     *                   &lt;element name="AddlDriverInfo" maxOccurs="99">
     *                     &lt;complexType>
     *                       &lt;complexContent>
     *                         &lt;extension base="{http://www.opentravel.org/OTA/2003/05}FormattedTextType">
     *                           &lt;attribute name="Type" use="required" type="{http://www.opentravel.org/OTA/2003/05}LocationDetailRequirementAddlDriverInfoType" />
     *                         &lt;/extension>
     *                       &lt;/complexContent>
     *                     &lt;/complexType>
     *                   &lt;/element>
     *                 &lt;/sequence>
     *               &lt;/restriction>
     *             &lt;/complexContent>
     *           &lt;/complexType>
     *         &lt;/element>
     *       &lt;/sequence>
     *     &lt;/restriction>
     *   &lt;/complexContent>
     * &lt;/complexType>
     * </pre>
     * 
     * 
     */
    @XmlAccessorType(XmlAccessType.FIELD)
    @XmlType(name = "", propOrder = {
        "addlDriverInfos"
    })
    public static class AdditionalDriver {

        @XmlElement(name = "AddlDriverInfos")
        protected VehicleLocationRequirementsType.AdditionalDriver.AddlDriverInfos addlDriverInfos;

        /**
         * 获取addlDriverInfos属性的值。
         * 
         * @return
         *     possible object is
         *     {@link VehicleLocationRequirementsType.AdditionalDriver.AddlDriverInfos }
         *     
         */
        public VehicleLocationRequirementsType.AdditionalDriver.AddlDriverInfos getAddlDriverInfos() {
            return addlDriverInfos;
        }

        /**
         * 设置addlDriverInfos属性的值。
         * 
         * @param value
         *     allowed object is
         *     {@link VehicleLocationRequirementsType.AdditionalDriver.AddlDriverInfos }
         *     
         */
        public void setAddlDriverInfos(VehicleLocationRequirementsType.AdditionalDriver.AddlDriverInfos value) {
            this.addlDriverInfos = value;
        }


        /**
         * <p>anonymous complex type的 Java 类。
         * 
         * <p>以下模式片段指定包含在此类中的预期内容。
         * 
         * <pre>
         * &lt;complexType>
         *   &lt;complexContent>
         *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
         *       &lt;sequence>
         *         &lt;element name="AddlDriverInfo" maxOccurs="99">
         *           &lt;complexType>
         *             &lt;complexContent>
         *               &lt;extension base="{http://www.opentravel.org/OTA/2003/05}FormattedTextType">
         *                 &lt;attribute name="Type" use="required" type="{http://www.opentravel.org/OTA/2003/05}LocationDetailRequirementAddlDriverInfoType" />
         *               &lt;/extension>
         *             &lt;/complexContent>
         *           &lt;/complexType>
         *         &lt;/element>
         *       &lt;/sequence>
         *     &lt;/restriction>
         *   &lt;/complexContent>
         * &lt;/complexType>
         * </pre>
         * 
         * 
         */
        @XmlAccessorType(XmlAccessType.FIELD)
        @XmlType(name = "", propOrder = {
            "addlDriverInfo"
        })
        public static class AddlDriverInfos {

            @XmlElement(name = "AddlDriverInfo", required = true)
            protected List<VehicleLocationRequirementsType.AdditionalDriver.AddlDriverInfos.AddlDriverInfo> addlDriverInfo;

            /**
             * Gets the value of the addlDriverInfo property.
             * 
             * <p>
             * This accessor method returns a reference to the live list,
             * not a snapshot. Therefore any modification you make to the
             * returned list will be present inside the JAXB object.
             * This is why there is not a <CODE>set</CODE> method for the addlDriverInfo property.
             * 
             * <p>
             * For example, to add a new item, do as follows:
             * <pre>
             *    getAddlDriverInfo().add(newItem);
             * </pre>
             * 
             * 
             * <p>
             * Objects of the following type(s) are allowed in the list
             * {@link VehicleLocationRequirementsType.AdditionalDriver.AddlDriverInfos.AddlDriverInfo }
             * 
             * 
             */
            public List<VehicleLocationRequirementsType.AdditionalDriver.AddlDriverInfos.AddlDriverInfo> getAddlDriverInfo() {
                if (addlDriverInfo == null) {
                    addlDriverInfo = new ArrayList<VehicleLocationRequirementsType.AdditionalDriver.AddlDriverInfos.AddlDriverInfo>();
                }
                return this.addlDriverInfo;
            }


            /**
             * <p>anonymous complex type的 Java 类。
             * 
             * <p>以下模式片段指定包含在此类中的预期内容。
             * 
             * <pre>
             * &lt;complexType>
             *   &lt;complexContent>
             *     &lt;extension base="{http://www.opentravel.org/OTA/2003/05}FormattedTextType">
             *       &lt;attribute name="Type" use="required" type="{http://www.opentravel.org/OTA/2003/05}LocationDetailRequirementAddlDriverInfoType" />
             *     &lt;/extension>
             *   &lt;/complexContent>
             * &lt;/complexType>
             * </pre>
             * 
             * 
             */
            @XmlAccessorType(XmlAccessType.FIELD)
            @XmlType(name = "")
            public static class AddlDriverInfo
                extends FormattedTextType
            {

                @XmlAttribute(name = "Type", required = true)
                protected LocationDetailRequirementAddlDriverInfoType type;

                /**
                 * 获取type属性的值。
                 * 
                 * @return
                 *     possible object is
                 *     {@link LocationDetailRequirementAddlDriverInfoType }
                 *     
                 */
                public LocationDetailRequirementAddlDriverInfoType getType() {
                    return type;
                }

                /**
                 * 设置type属性的值。
                 * 
                 * @param value
                 *     allowed object is
                 *     {@link LocationDetailRequirementAddlDriverInfoType }
                 *     
                 */
                public void setType(LocationDetailRequirementAddlDriverInfoType value) {
                    this.type = value;
                }

            }

        }

    }


    /**
     * <p>anonymous complex type的 Java 类。
     * 
     * <p>以下模式片段指定包含在此类中的预期内容。
     * 
     * <pre>
     * &lt;complexType>
     *   &lt;complexContent>
     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     *       &lt;sequence>
     *         &lt;element name="AgeSurcharge" maxOccurs="5" minOccurs="0">
     *           &lt;complexType>
     *             &lt;complexContent>
     *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     *                 &lt;attGroup ref="{http://www.opentravel.org/OTA/2003/05}CurrencyAmountGroup"/>
     *                 &lt;attribute name="Age" type="{http://www.opentravel.org/OTA/2003/05}OTA_CodeType" />
     *               &lt;/restriction>
     *             &lt;/complexContent>
     *           &lt;/complexType>
     *         &lt;/element>
     *         &lt;element name="AgeInfos" minOccurs="0">
     *           &lt;complexType>
     *             &lt;complexContent>
     *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     *                 &lt;sequence>
     *                   &lt;element name="AgeInfo" maxOccurs="99">
     *                     &lt;complexType>
     *                       &lt;complexContent>
     *                         &lt;extension base="{http://www.opentravel.org/OTA/2003/05}FormattedTextType">
     *                           &lt;attribute name="Type" use="required" type="{http://www.opentravel.org/OTA/2003/05}LocationDetailRequirementAgeInfoType" />
     *                         &lt;/extension>
     *                       &lt;/complexContent>
     *                     &lt;/complexType>
     *                   &lt;/element>
     *                 &lt;/sequence>
     *               &lt;/restriction>
     *             &lt;/complexContent>
     *           &lt;/complexType>
     *         &lt;/element>
     *       &lt;/sequence>
     *       &lt;attribute name="MinimumAge" type="{http://www.w3.org/2001/XMLSchema}positiveInteger" />
     *       &lt;attribute name="MaximumAge" type="{http://www.w3.org/2001/XMLSchema}positiveInteger" />
     *     &lt;/restriction>
     *   &lt;/complexContent>
     * &lt;/complexType>
     * </pre>
     * 
     * 
     */
    @XmlAccessorType(XmlAccessType.FIELD)
    @XmlType(name = "", propOrder = {
        "ageSurcharge",
        "ageInfos"
    })
    public static class Age {

        @XmlElement(name = "AgeSurcharge")
        protected List<VehicleLocationRequirementsType.Age.AgeSurcharge> ageSurcharge;
        @XmlElement(name = "AgeInfos")
        protected VehicleLocationRequirementsType.Age.AgeInfos ageInfos;
        @XmlAttribute(name = "MinimumAge")
        @XmlSchemaType(name = "positiveInteger")
        protected BigInteger minimumAge;
        @XmlAttribute(name = "MaximumAge")
        @XmlSchemaType(name = "positiveInteger")
        protected BigInteger maximumAge;

        /**
         * Gets the value of the ageSurcharge property.
         * 
         * <p>
         * This accessor method returns a reference to the live list,
         * not a snapshot. Therefore any modification you make to the
         * returned list will be present inside the JAXB object.
         * This is why there is not a <CODE>set</CODE> method for the ageSurcharge property.
         * 
         * <p>
         * For example, to add a new item, do as follows:
         * <pre>
         *    getAgeSurcharge().add(newItem);
         * </pre>
         * 
         * 
         * <p>
         * Objects of the following type(s) are allowed in the list
         * {@link VehicleLocationRequirementsType.Age.AgeSurcharge }
         * 
         * 
         */
        public List<VehicleLocationRequirementsType.Age.AgeSurcharge> getAgeSurcharge() {
            if (ageSurcharge == null) {
                ageSurcharge = new ArrayList<VehicleLocationRequirementsType.Age.AgeSurcharge>();
            }
            return this.ageSurcharge;
        }

        /**
         * 获取ageInfos属性的值。
         * 
         * @return
         *     possible object is
         *     {@link VehicleLocationRequirementsType.Age.AgeInfos }
         *     
         */
        public VehicleLocationRequirementsType.Age.AgeInfos getAgeInfos() {
            return ageInfos;
        }

        /**
         * 设置ageInfos属性的值。
         * 
         * @param value
         *     allowed object is
         *     {@link VehicleLocationRequirementsType.Age.AgeInfos }
         *     
         */
        public void setAgeInfos(VehicleLocationRequirementsType.Age.AgeInfos value) {
            this.ageInfos = value;
        }

        /**
         * 获取minimumAge属性的值。
         * 
         * @return
         *     possible object is
         *     {@link BigInteger }
         *     
         */
        public BigInteger getMinimumAge() {
            return minimumAge;
        }

        /**
         * 设置minimumAge属性的值。
         * 
         * @param value
         *     allowed object is
         *     {@link BigInteger }
         *     
         */
        public void setMinimumAge(BigInteger value) {
            this.minimumAge = value;
        }

        /**
         * 获取maximumAge属性的值。
         * 
         * @return
         *     possible object is
         *     {@link BigInteger }
         *     
         */
        public BigInteger getMaximumAge() {
            return maximumAge;
        }

        /**
         * 设置maximumAge属性的值。
         * 
         * @param value
         *     allowed object is
         *     {@link BigInteger }
         *     
         */
        public void setMaximumAge(BigInteger value) {
            this.maximumAge = value;
        }


        /**
         * <p>anonymous complex type的 Java 类。
         * 
         * <p>以下模式片段指定包含在此类中的预期内容。
         * 
         * <pre>
         * &lt;complexType>
         *   &lt;complexContent>
         *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
         *       &lt;sequence>
         *         &lt;element name="AgeInfo" maxOccurs="99">
         *           &lt;complexType>
         *             &lt;complexContent>
         *               &lt;extension base="{http://www.opentravel.org/OTA/2003/05}FormattedTextType">
         *                 &lt;attribute name="Type" use="required" type="{http://www.opentravel.org/OTA/2003/05}LocationDetailRequirementAgeInfoType" />
         *               &lt;/extension>
         *             &lt;/complexContent>
         *           &lt;/complexType>
         *         &lt;/element>
         *       &lt;/sequence>
         *     &lt;/restriction>
         *   &lt;/complexContent>
         * &lt;/complexType>
         * </pre>
         * 
         * 
         */
        @XmlAccessorType(XmlAccessType.FIELD)
        @XmlType(name = "", propOrder = {
            "ageInfo"
        })
        public static class AgeInfos {

            @XmlElement(name = "AgeInfo", required = true)
            protected List<VehicleLocationRequirementsType.Age.AgeInfos.AgeInfo> ageInfo;

            /**
             * Gets the value of the ageInfo property.
             * 
             * <p>
             * This accessor method returns a reference to the live list,
             * not a snapshot. Therefore any modification you make to the
             * returned list will be present inside the JAXB object.
             * This is why there is not a <CODE>set</CODE> method for the ageInfo property.
             * 
             * <p>
             * For example, to add a new item, do as follows:
             * <pre>
             *    getAgeInfo().add(newItem);
             * </pre>
             * 
             * 
             * <p>
             * Objects of the following type(s) are allowed in the list
             * {@link VehicleLocationRequirementsType.Age.AgeInfos.AgeInfo }
             * 
             * 
             */
            public List<VehicleLocationRequirementsType.Age.AgeInfos.AgeInfo> getAgeInfo() {
                if (ageInfo == null) {
                    ageInfo = new ArrayList<VehicleLocationRequirementsType.Age.AgeInfos.AgeInfo>();
                }
                return this.ageInfo;
            }


            /**
             * <p>anonymous complex type的 Java 类。
             * 
             * <p>以下模式片段指定包含在此类中的预期内容。
             * 
             * <pre>
             * &lt;complexType>
             *   &lt;complexContent>
             *     &lt;extension base="{http://www.opentravel.org/OTA/2003/05}FormattedTextType">
             *       &lt;attribute name="Type" use="required" type="{http://www.opentravel.org/OTA/2003/05}LocationDetailRequirementAgeInfoType" />
             *     &lt;/extension>
             *   &lt;/complexContent>
             * &lt;/complexType>
             * </pre>
             * 
             * 
             */
            @XmlAccessorType(XmlAccessType.FIELD)
            @XmlType(name = "")
            public static class AgeInfo
                extends FormattedTextType
            {

                @XmlAttribute(name = "Type", required = true)
                protected LocationDetailRequirementAgeInfoType type;

                /**
                 * 获取type属性的值。
                 * 
                 * @return
                 *     possible object is
                 *     {@link LocationDetailRequirementAgeInfoType }
                 *     
                 */
                public LocationDetailRequirementAgeInfoType getType() {
                    return type;
                }

                /**
                 * 设置type属性的值。
                 * 
                 * @param value
                 *     allowed object is
                 *     {@link LocationDetailRequirementAgeInfoType }
                 *     
                 */
                public void setType(LocationDetailRequirementAgeInfoType value) {
                    this.type = value;
                }

            }

        }


        /**
         * <p>anonymous complex type的 Java 类。
         * 
         * <p>以下模式片段指定包含在此类中的预期内容。
         * 
         * <pre>
         * &lt;complexType>
         *   &lt;complexContent>
         *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
         *       &lt;attGroup ref="{http://www.opentravel.org/OTA/2003/05}CurrencyAmountGroup"/>
         *       &lt;attribute name="Age" type="{http://www.opentravel.org/OTA/2003/05}OTA_CodeType" />
         *     &lt;/restriction>
         *   &lt;/complexContent>
         * &lt;/complexType>
         * </pre>
         * 
         * 
         */
        @XmlAccessorType(XmlAccessType.FIELD)
        @XmlType(name = "")
        public static class AgeSurcharge {

            @XmlAttribute(name = "Age")
            protected String age;
            @XmlAttribute(name = "CurrencyCode")
            protected String currencyCode;
            @XmlAttribute(name = "DecimalPlaces")
            @XmlSchemaType(name = "nonNegativeInteger")
            protected BigInteger decimalPlaces;
            @XmlAttribute(name = "Amount")
            protected BigDecimal amount;

            /**
             * 获取age属性的值。
             * 
             * @return
             *     possible object is
             *     {@link String }
             *     
             */
            public String getAge() {
                return age;
            }

            /**
             * 设置age属性的值。
             * 
             * @param value
             *     allowed object is
             *     {@link String }
             *     
             */
            public void setAge(String value) {
                this.age = value;
            }

            /**
             * 获取currencyCode属性的值。
             * 
             * @return
             *     possible object is
             *     {@link String }
             *     
             */
            public String getCurrencyCode() {
                return currencyCode;
            }

            /**
             * 设置currencyCode属性的值。
             * 
             * @param value
             *     allowed object is
             *     {@link String }
             *     
             */
            public void setCurrencyCode(String value) {
                this.currencyCode = value;
            }

            /**
             * 获取decimalPlaces属性的值。
             * 
             * @return
             *     possible object is
             *     {@link BigInteger }
             *     
             */
            public BigInteger getDecimalPlaces() {
                return decimalPlaces;
            }

            /**
             * 设置decimalPlaces属性的值。
             * 
             * @param value
             *     allowed object is
             *     {@link BigInteger }
             *     
             */
            public void setDecimalPlaces(BigInteger value) {
                this.decimalPlaces = value;
            }

            /**
             * 获取amount属性的值。
             * 
             * @return
             *     possible object is
             *     {@link BigDecimal }
             *     
             */
            public BigDecimal getAmount() {
                return amount;
            }

            /**
             * 设置amount属性的值。
             * 
             * @param value
             *     allowed object is
             *     {@link BigDecimal }
             *     
             */
            public void setAmount(BigDecimal value) {
                this.amount = value;
            }

        }

    }


    /**
     * <p>anonymous complex type的 Java 类。
     * 
     * <p>以下模式片段指定包含在此类中的预期内容。
     * 
     * <pre>
     * &lt;complexType>
     *   &lt;complexContent>
     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     *       &lt;sequence>
     *         &lt;element name="CreditCard" type="{http://www.opentravel.org/OTA/2003/05}AcceptablePaymentCardsInfoType" minOccurs="0"/>
     *         &lt;element name="DebitCard" type="{http://www.opentravel.org/OTA/2003/05}AcceptablePaymentCardsInfoType" minOccurs="0"/>
     *         &lt;element name="Cash" minOccurs="0">
     *           &lt;complexType>
     *             &lt;complexContent>
     *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     *                 &lt;sequence>
     *                   &lt;element name="Info" type="{http://www.opentravel.org/OTA/2003/05}FormattedTextType" minOccurs="0"/>
     *                 &lt;/sequence>
     *               &lt;/restriction>
     *             &lt;/complexContent>
     *           &lt;/complexType>
     *         &lt;/element>
     *         &lt;element name="Voucher" minOccurs="0">
     *           &lt;complexType>
     *             &lt;complexContent>
     *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     *                 &lt;sequence>
     *                   &lt;element name="Info" type="{http://www.opentravel.org/OTA/2003/05}FormattedTextType" minOccurs="0"/>
     *                 &lt;/sequence>
     *               &lt;/restriction>
     *             &lt;/complexContent>
     *           &lt;/complexType>
     *         &lt;/element>
     *         &lt;element name="BankAcct" minOccurs="0">
     *           &lt;complexType>
     *             &lt;complexContent>
     *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     *                 &lt;sequence>
     *                   &lt;element name="Info" type="{http://www.opentravel.org/OTA/2003/05}FormattedTextType" minOccurs="0"/>
     *                 &lt;/sequence>
     *               &lt;/restriction>
     *             &lt;/complexContent>
     *           &lt;/complexType>
     *         &lt;/element>
     *         &lt;element name="DirectBill" minOccurs="0">
     *           &lt;complexType>
     *             &lt;complexContent>
     *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     *                 &lt;sequence>
     *                   &lt;element name="Info" type="{http://www.opentravel.org/OTA/2003/05}FormattedTextType" minOccurs="0"/>
     *                 &lt;/sequence>
     *               &lt;/restriction>
     *             &lt;/complexContent>
     *           &lt;/complexType>
     *         &lt;/element>
     *         &lt;element name="LoyaltyRedemption" minOccurs="0">
     *           &lt;complexType>
     *             &lt;complexContent>
     *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     *                 &lt;sequence>
     *                   &lt;element name="Info" type="{http://www.opentravel.org/OTA/2003/05}FormattedTextType" minOccurs="0"/>
     *                 &lt;/sequence>
     *               &lt;/restriction>
     *             &lt;/complexContent>
     *           &lt;/complexType>
     *         &lt;/element>
     *         &lt;element name="MiscChargeOrder" minOccurs="0">
     *           &lt;complexType>
     *             &lt;complexContent>
     *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     *                 &lt;sequence>
     *                   &lt;element name="Info" type="{http://www.opentravel.org/OTA/2003/05}FormattedTextType" minOccurs="0"/>
     *                 &lt;/sequence>
     *               &lt;/restriction>
     *             &lt;/complexContent>
     *           &lt;/complexType>
     *         &lt;/element>
     *         &lt;element name="Deposit" type="{http://www.opentravel.org/OTA/2003/05}AcceptablePaymentCardsInfoType" minOccurs="0"/>
     *         &lt;element name="Guarantee" type="{http://www.opentravel.org/OTA/2003/05}AcceptablePaymentCardsInfoType" minOccurs="0"/>
     *         &lt;element name="PrePayment" type="{http://www.opentravel.org/OTA/2003/05}AcceptablePaymentCardsInfoType" minOccurs="0"/>
     *         &lt;element name="PaymentOptionsInfo" type="{http://www.opentravel.org/OTA/2003/05}FormattedTextType" minOccurs="0"/>
     *       &lt;/sequence>
     *     &lt;/restriction>
     *   &lt;/complexContent>
     * &lt;/complexType>
     * </pre>
     * 
     * 
     */
    @XmlAccessorType(XmlAccessType.FIELD)
    @XmlType(name = "", propOrder = {
        "creditCard",
        "debitCard",
        "cash",
        "voucher",
        "bankAcct",
        "directBill",
        "loyaltyRedemption",
        "miscChargeOrder",
        "deposit",
        "guarantee",
        "prePayment",
        "paymentOptionsInfo"
    })
    public static class PaymentOptions {

        @XmlElement(name = "CreditCard")
        protected AcceptablePaymentCardsInfoType creditCard;
        @XmlElement(name = "DebitCard")
        protected AcceptablePaymentCardsInfoType debitCard;
        @XmlElement(name = "Cash")
        protected VehicleLocationRequirementsType.PaymentOptions.Cash cash;
        @XmlElement(name = "Voucher")
        protected VehicleLocationRequirementsType.PaymentOptions.Voucher voucher;
        @XmlElement(name = "BankAcct")
        protected VehicleLocationRequirementsType.PaymentOptions.BankAcct bankAcct;
        @XmlElement(name = "DirectBill")
        protected VehicleLocationRequirementsType.PaymentOptions.DirectBill directBill;
        @XmlElement(name = "LoyaltyRedemption")
        protected VehicleLocationRequirementsType.PaymentOptions.LoyaltyRedemption loyaltyRedemption;
        @XmlElement(name = "MiscChargeOrder")
        protected VehicleLocationRequirementsType.PaymentOptions.MiscChargeOrder miscChargeOrder;
        @XmlElement(name = "Deposit")
        protected AcceptablePaymentCardsInfoType deposit;
        @XmlElement(name = "Guarantee")
        protected AcceptablePaymentCardsInfoType guarantee;
        @XmlElement(name = "PrePayment")
        protected AcceptablePaymentCardsInfoType prePayment;
        @XmlElement(name = "PaymentOptionsInfo")
        protected FormattedTextType paymentOptionsInfo;

        /**
         * 获取creditCard属性的值。
         * 
         * @return
         *     possible object is
         *     {@link AcceptablePaymentCardsInfoType }
         *     
         */
        public AcceptablePaymentCardsInfoType getCreditCard() {
            return creditCard;
        }

        /**
         * 设置creditCard属性的值。
         * 
         * @param value
         *     allowed object is
         *     {@link AcceptablePaymentCardsInfoType }
         *     
         */
        public void setCreditCard(AcceptablePaymentCardsInfoType value) {
            this.creditCard = value;
        }

        /**
         * 获取debitCard属性的值。
         * 
         * @return
         *     possible object is
         *     {@link AcceptablePaymentCardsInfoType }
         *     
         */
        public AcceptablePaymentCardsInfoType getDebitCard() {
            return debitCard;
        }

        /**
         * 设置debitCard属性的值。
         * 
         * @param value
         *     allowed object is
         *     {@link AcceptablePaymentCardsInfoType }
         *     
         */
        public void setDebitCard(AcceptablePaymentCardsInfoType value) {
            this.debitCard = value;
        }

        /**
         * 获取cash属性的值。
         * 
         * @return
         *     possible object is
         *     {@link VehicleLocationRequirementsType.PaymentOptions.Cash }
         *     
         */
        public VehicleLocationRequirementsType.PaymentOptions.Cash getCash() {
            return cash;
        }

        /**
         * 设置cash属性的值。
         * 
         * @param value
         *     allowed object is
         *     {@link VehicleLocationRequirementsType.PaymentOptions.Cash }
         *     
         */
        public void setCash(VehicleLocationRequirementsType.PaymentOptions.Cash value) {
            this.cash = value;
        }

        /**
         * 获取voucher属性的值。
         * 
         * @return
         *     possible object is
         *     {@link VehicleLocationRequirementsType.PaymentOptions.Voucher }
         *     
         */
        public VehicleLocationRequirementsType.PaymentOptions.Voucher getVoucher() {
            return voucher;
        }

        /**
         * 设置voucher属性的值。
         * 
         * @param value
         *     allowed object is
         *     {@link VehicleLocationRequirementsType.PaymentOptions.Voucher }
         *     
         */
        public void setVoucher(VehicleLocationRequirementsType.PaymentOptions.Voucher value) {
            this.voucher = value;
        }

        /**
         * 获取bankAcct属性的值。
         * 
         * @return
         *     possible object is
         *     {@link VehicleLocationRequirementsType.PaymentOptions.BankAcct }
         *     
         */
        public VehicleLocationRequirementsType.PaymentOptions.BankAcct getBankAcct() {
            return bankAcct;
        }

        /**
         * 设置bankAcct属性的值。
         * 
         * @param value
         *     allowed object is
         *     {@link VehicleLocationRequirementsType.PaymentOptions.BankAcct }
         *     
         */
        public void setBankAcct(VehicleLocationRequirementsType.PaymentOptions.BankAcct value) {
            this.bankAcct = value;
        }

        /**
         * 获取directBill属性的值。
         * 
         * @return
         *     possible object is
         *     {@link VehicleLocationRequirementsType.PaymentOptions.DirectBill }
         *     
         */
        public VehicleLocationRequirementsType.PaymentOptions.DirectBill getDirectBill() {
            return directBill;
        }

        /**
         * 设置directBill属性的值。
         * 
         * @param value
         *     allowed object is
         *     {@link VehicleLocationRequirementsType.PaymentOptions.DirectBill }
         *     
         */
        public void setDirectBill(VehicleLocationRequirementsType.PaymentOptions.DirectBill value) {
            this.directBill = value;
        }

        /**
         * 获取loyaltyRedemption属性的值。
         * 
         * @return
         *     possible object is
         *     {@link VehicleLocationRequirementsType.PaymentOptions.LoyaltyRedemption }
         *     
         */
        public VehicleLocationRequirementsType.PaymentOptions.LoyaltyRedemption getLoyaltyRedemption() {
            return loyaltyRedemption;
        }

        /**
         * 设置loyaltyRedemption属性的值。
         * 
         * @param value
         *     allowed object is
         *     {@link VehicleLocationRequirementsType.PaymentOptions.LoyaltyRedemption }
         *     
         */
        public void setLoyaltyRedemption(VehicleLocationRequirementsType.PaymentOptions.LoyaltyRedemption value) {
            this.loyaltyRedemption = value;
        }

        /**
         * 获取miscChargeOrder属性的值。
         * 
         * @return
         *     possible object is
         *     {@link VehicleLocationRequirementsType.PaymentOptions.MiscChargeOrder }
         *     
         */
        public VehicleLocationRequirementsType.PaymentOptions.MiscChargeOrder getMiscChargeOrder() {
            return miscChargeOrder;
        }

        /**
         * 设置miscChargeOrder属性的值。
         * 
         * @param value
         *     allowed object is
         *     {@link VehicleLocationRequirementsType.PaymentOptions.MiscChargeOrder }
         *     
         */
        public void setMiscChargeOrder(VehicleLocationRequirementsType.PaymentOptions.MiscChargeOrder value) {
            this.miscChargeOrder = value;
        }

        /**
         * 获取deposit属性的值。
         * 
         * @return
         *     possible object is
         *     {@link AcceptablePaymentCardsInfoType }
         *     
         */
        public AcceptablePaymentCardsInfoType getDeposit() {
            return deposit;
        }

        /**
         * 设置deposit属性的值。
         * 
         * @param value
         *     allowed object is
         *     {@link AcceptablePaymentCardsInfoType }
         *     
         */
        public void setDeposit(AcceptablePaymentCardsInfoType value) {
            this.deposit = value;
        }

        /**
         * 获取guarantee属性的值。
         * 
         * @return
         *     possible object is
         *     {@link AcceptablePaymentCardsInfoType }
         *     
         */
        public AcceptablePaymentCardsInfoType getGuarantee() {
            return guarantee;
        }

        /**
         * 设置guarantee属性的值。
         * 
         * @param value
         *     allowed object is
         *     {@link AcceptablePaymentCardsInfoType }
         *     
         */
        public void setGuarantee(AcceptablePaymentCardsInfoType value) {
            this.guarantee = value;
        }

        /**
         * 获取prePayment属性的值。
         * 
         * @return
         *     possible object is
         *     {@link AcceptablePaymentCardsInfoType }
         *     
         */
        public AcceptablePaymentCardsInfoType getPrePayment() {
            return prePayment;
        }

        /**
         * 设置prePayment属性的值。
         * 
         * @param value
         *     allowed object is
         *     {@link AcceptablePaymentCardsInfoType }
         *     
         */
        public void setPrePayment(AcceptablePaymentCardsInfoType value) {
            this.prePayment = value;
        }

        /**
         * 获取paymentOptionsInfo属性的值。
         * 
         * @return
         *     possible object is
         *     {@link FormattedTextType }
         *     
         */
        public FormattedTextType getPaymentOptionsInfo() {
            return paymentOptionsInfo;
        }

        /**
         * 设置paymentOptionsInfo属性的值。
         * 
         * @param value
         *     allowed object is
         *     {@link FormattedTextType }
         *     
         */
        public void setPaymentOptionsInfo(FormattedTextType value) {
            this.paymentOptionsInfo = value;
        }


        /**
         * <p>anonymous complex type的 Java 类。
         * 
         * <p>以下模式片段指定包含在此类中的预期内容。
         * 
         * <pre>
         * &lt;complexType>
         *   &lt;complexContent>
         *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
         *       &lt;sequence>
         *         &lt;element name="Info" type="{http://www.opentravel.org/OTA/2003/05}FormattedTextType" minOccurs="0"/>
         *       &lt;/sequence>
         *     &lt;/restriction>
         *   &lt;/complexContent>
         * &lt;/complexType>
         * </pre>
         * 
         * 
         */
        @XmlAccessorType(XmlAccessType.FIELD)
        @XmlType(name = "", propOrder = {
            "info"
        })
        public static class BankAcct {

            @XmlElement(name = "Info")
            protected FormattedTextType info;

            /**
             * 获取info属性的值。
             * 
             * @return
             *     possible object is
             *     {@link FormattedTextType }
             *     
             */
            public FormattedTextType getInfo() {
                return info;
            }

            /**
             * 设置info属性的值。
             * 
             * @param value
             *     allowed object is
             *     {@link FormattedTextType }
             *     
             */
            public void setInfo(FormattedTextType value) {
                this.info = value;
            }

        }


        /**
         * <p>anonymous complex type的 Java 类。
         * 
         * <p>以下模式片段指定包含在此类中的预期内容。
         * 
         * <pre>
         * &lt;complexType>
         *   &lt;complexContent>
         *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
         *       &lt;sequence>
         *         &lt;element name="Info" type="{http://www.opentravel.org/OTA/2003/05}FormattedTextType" minOccurs="0"/>
         *       &lt;/sequence>
         *     &lt;/restriction>
         *   &lt;/complexContent>
         * &lt;/complexType>
         * </pre>
         * 
         * 
         */
        @XmlAccessorType(XmlAccessType.FIELD)
        @XmlType(name = "", propOrder = {
            "info"
        })
        public static class Cash {

            @XmlElement(name = "Info")
            protected FormattedTextType info;

            /**
             * 获取info属性的值。
             * 
             * @return
             *     possible object is
             *     {@link FormattedTextType }
             *     
             */
            public FormattedTextType getInfo() {
                return info;
            }

            /**
             * 设置info属性的值。
             * 
             * @param value
             *     allowed object is
             *     {@link FormattedTextType }
             *     
             */
            public void setInfo(FormattedTextType value) {
                this.info = value;
            }

        }


        /**
         * <p>anonymous complex type的 Java 类。
         * 
         * <p>以下模式片段指定包含在此类中的预期内容。
         * 
         * <pre>
         * &lt;complexType>
         *   &lt;complexContent>
         *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
         *       &lt;sequence>
         *         &lt;element name="Info" type="{http://www.opentravel.org/OTA/2003/05}FormattedTextType" minOccurs="0"/>
         *       &lt;/sequence>
         *     &lt;/restriction>
         *   &lt;/complexContent>
         * &lt;/complexType>
         * </pre>
         * 
         * 
         */
        @XmlAccessorType(XmlAccessType.FIELD)
        @XmlType(name = "", propOrder = {
            "info"
        })
        public static class DirectBill {

            @XmlElement(name = "Info")
            protected FormattedTextType info;

            /**
             * 获取info属性的值。
             * 
             * @return
             *     possible object is
             *     {@link FormattedTextType }
             *     
             */
            public FormattedTextType getInfo() {
                return info;
            }

            /**
             * 设置info属性的值。
             * 
             * @param value
             *     allowed object is
             *     {@link FormattedTextType }
             *     
             */
            public void setInfo(FormattedTextType value) {
                this.info = value;
            }

        }


        /**
         * <p>anonymous complex type的 Java 类。
         * 
         * <p>以下模式片段指定包含在此类中的预期内容。
         * 
         * <pre>
         * &lt;complexType>
         *   &lt;complexContent>
         *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
         *       &lt;sequence>
         *         &lt;element name="Info" type="{http://www.opentravel.org/OTA/2003/05}FormattedTextType" minOccurs="0"/>
         *       &lt;/sequence>
         *     &lt;/restriction>
         *   &lt;/complexContent>
         * &lt;/complexType>
         * </pre>
         * 
         * 
         */
        @XmlAccessorType(XmlAccessType.FIELD)
        @XmlType(name = "", propOrder = {
            "info"
        })
        public static class LoyaltyRedemption {

            @XmlElement(name = "Info")
            protected FormattedTextType info;

            /**
             * 获取info属性的值。
             * 
             * @return
             *     possible object is
             *     {@link FormattedTextType }
             *     
             */
            public FormattedTextType getInfo() {
                return info;
            }

            /**
             * 设置info属性的值。
             * 
             * @param value
             *     allowed object is
             *     {@link FormattedTextType }
             *     
             */
            public void setInfo(FormattedTextType value) {
                this.info = value;
            }

        }


        /**
         * <p>anonymous complex type的 Java 类。
         * 
         * <p>以下模式片段指定包含在此类中的预期内容。
         * 
         * <pre>
         * &lt;complexType>
         *   &lt;complexContent>
         *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
         *       &lt;sequence>
         *         &lt;element name="Info" type="{http://www.opentravel.org/OTA/2003/05}FormattedTextType" minOccurs="0"/>
         *       &lt;/sequence>
         *     &lt;/restriction>
         *   &lt;/complexContent>
         * &lt;/complexType>
         * </pre>
         * 
         * 
         */
        @XmlAccessorType(XmlAccessType.FIELD)
        @XmlType(name = "", propOrder = {
            "info"
        })
        public static class MiscChargeOrder {

            @XmlElement(name = "Info")
            protected FormattedTextType info;

            /**
             * 获取info属性的值。
             * 
             * @return
             *     possible object is
             *     {@link FormattedTextType }
             *     
             */
            public FormattedTextType getInfo() {
                return info;
            }

            /**
             * 设置info属性的值。
             * 
             * @param value
             *     allowed object is
             *     {@link FormattedTextType }
             *     
             */
            public void setInfo(FormattedTextType value) {
                this.info = value;
            }

        }


        /**
         * <p>anonymous complex type的 Java 类。
         * 
         * <p>以下模式片段指定包含在此类中的预期内容。
         * 
         * <pre>
         * &lt;complexType>
         *   &lt;complexContent>
         *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
         *       &lt;sequence>
         *         &lt;element name="Info" type="{http://www.opentravel.org/OTA/2003/05}FormattedTextType" minOccurs="0"/>
         *       &lt;/sequence>
         *     &lt;/restriction>
         *   &lt;/complexContent>
         * &lt;/complexType>
         * </pre>
         * 
         * 
         */
        @XmlAccessorType(XmlAccessType.FIELD)
        @XmlType(name = "", propOrder = {
            "info"
        })
        public static class Voucher {

            @XmlElement(name = "Info")
            protected FormattedTextType info;

            /**
             * 获取info属性的值。
             * 
             * @return
             *     possible object is
             *     {@link FormattedTextType }
             *     
             */
            public FormattedTextType getInfo() {
                return info;
            }

            /**
             * 设置info属性的值。
             * 
             * @param value
             *     allowed object is
             *     {@link FormattedTextType }
             *     
             */
            public void setInfo(FormattedTextType value) {
                this.info = value;
            }

        }

    }


    /**
     * <p>anonymous complex type的 Java 类。
     * 
     * <p>以下模式片段指定包含在此类中的预期内容。
     * 
     * <pre>
     * &lt;complexType>
     *   &lt;complexContent>
     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     *       &lt;sequence>
     *         &lt;element name="RequirementInfo" maxOccurs="99">
     *           &lt;complexType>
     *             &lt;complexContent>
     *               &lt;extension base="{http://www.opentravel.org/OTA/2003/05}FormattedTextType">
     *                 &lt;attribute name="Type" use="required" type="{http://www.opentravel.org/OTA/2003/05}LocationDetailRequirementInfoType" />
     *               &lt;/extension>
     *             &lt;/complexContent>
     *           &lt;/complexType>
     *         &lt;/element>
     *       &lt;/sequence>
     *     &lt;/restriction>
     *   &lt;/complexContent>
     * &lt;/complexType>
     * </pre>
     * 
     * 
     */
    @XmlAccessorType(XmlAccessType.FIELD)
    @XmlType(name = "", propOrder = {
        "requirementInfo"
    })
    public static class RequirementInfos {

        @XmlElement(name = "RequirementInfo", required = true)
        protected List<VehicleLocationRequirementsType.RequirementInfos.RequirementInfo> requirementInfo;

        /**
         * Gets the value of the requirementInfo property.
         * 
         * <p>
         * This accessor method returns a reference to the live list,
         * not a snapshot. Therefore any modification you make to the
         * returned list will be present inside the JAXB object.
         * This is why there is not a <CODE>set</CODE> method for the requirementInfo property.
         * 
         * <p>
         * For example, to add a new item, do as follows:
         * <pre>
         *    getRequirementInfo().add(newItem);
         * </pre>
         * 
         * 
         * <p>
         * Objects of the following type(s) are allowed in the list
         * {@link VehicleLocationRequirementsType.RequirementInfos.RequirementInfo }
         * 
         * 
         */
        public List<VehicleLocationRequirementsType.RequirementInfos.RequirementInfo> getRequirementInfo() {
            if (requirementInfo == null) {
                requirementInfo = new ArrayList<VehicleLocationRequirementsType.RequirementInfos.RequirementInfo>();
            }
            return this.requirementInfo;
        }


        /**
         * <p>anonymous complex type的 Java 类。
         * 
         * <p>以下模式片段指定包含在此类中的预期内容。
         * 
         * <pre>
         * &lt;complexType>
         *   &lt;complexContent>
         *     &lt;extension base="{http://www.opentravel.org/OTA/2003/05}FormattedTextType">
         *       &lt;attribute name="Type" use="required" type="{http://www.opentravel.org/OTA/2003/05}LocationDetailRequirementInfoType" />
         *     &lt;/extension>
         *   &lt;/complexContent>
         * &lt;/complexType>
         * </pre>
         * 
         * 
         */
        @XmlAccessorType(XmlAccessType.FIELD)
        @XmlType(name = "")
        public static class RequirementInfo
            extends FormattedTextType
        {

            @XmlAttribute(name = "Type", required = true)
            protected LocationDetailRequirementInfoType type;

            /**
             * 获取type属性的值。
             * 
             * @return
             *     possible object is
             *     {@link LocationDetailRequirementInfoType }
             *     
             */
            public LocationDetailRequirementInfoType getType() {
                return type;
            }

            /**
             * 设置type属性的值。
             * 
             * @param value
             *     allowed object is
             *     {@link LocationDetailRequirementInfoType }
             *     
             */
            public void setType(LocationDetailRequirementInfoType value) {
                this.type = value;
            }

        }

    }

}
